//
//  NetWorkManager.h
//  QuickCure1
//
//  Created by maoge on 16/10/30.
//  Copyright © 2016年 haoge. All rights reserved.


// 项目小的话，所有的业务逻辑放在一个类里即可，如果项目大的，要在某一个模块里搞一个业务逻辑层

#import <Foundation/Foundation.h>


@class Users;
@class YJDoctorsIfonModel;
@class WGCycleImageModel;
@class Weather;
@class Disease;
@class WGComplicationModel;

@interface NetWorkManager : NSObject

/** 单例 */
+(instancetype)sharedManager;

/** 请求天气 */
- (void)loadWeatherWithCurrentCity:(NSString *)currentCity
                      successBlock:(void(^)(NSDictionary *cityDic))successBlock
                        errorBlock:(void(^)(NSString *error))errorBlock;
/**
 *  肿瘤疾病选择疾病细分列表接口
 */
-(void)loadDiseaseSubWithCi_id:(int)ci_id
                          page:(int)page
                  successBlock:(void(^)(NSArray *dtoArray))successBlock
                    errorBlock:(void(^)(NSString *error))errorBlock;

/*
 *  登录
 */
- (void)loginUserWihtAccount:(NSString *)account
                    password:(NSString *)password
                successBlock:(void(^)(Users *dto))successBlock
                  errorBlock:(void(^)(NSString *error))errorBlock;


/** 
 网络获取医生数据

 @param paramDic      请求的参数
 @param completeBlock 完成后的回调
 @param errorBlock    网络异常的回调
 */
- (void)loadDoctorsIfonWithParmas:(NSDictionary *)paramDic completeBlock:(void(^)(NSArray<YJDoctorsIfonModel *> *modelList,NSError *error))completeBlock errorBlock:(void(^)(NSString *error))errorBlock;

-(void)loadCycleImages:(void(^)(NSArray<WGCycleImageModel*> *))completedBlock;

#pragma
#pragma mark - 测试天气

-(void)loadWheatherWithCurrentCity:(NSString *)city  Completed:(void(^)(NSArray<Weather*>* ))completdeBlock;


#pragma
#pragma mark - 疾病接口
-(void)loadDiseaseDataWithPageSize:(int)pageSize ci1_id:(int)ci1_id page:(int
                                                                          )page compete:(void(^)(NSArray<Disease *>* array, NSError *error))completedBlock;


//6.选择并发症列表接口
-(void)loadComlicationDataWithPage:(int)page pageSize:(int)pageSize ci2_id:(int)ci2_id completed:(void(^)(NSArray<WGComplicationModel *>* array,NSError *error))completedBlock;

//医生数量
-(void)loadDoctorCountWithC1_id:(int)c1_id  ci2_id:(int)ci2_id  ci3_id:(int)ci3_id completed:(void(^)(int count ))completedBalock;


/**
 关注医生的信息

 @param usersId       用户的id
 @param pageSize      固定15 未来使用
 @param page          固定1  未来使用
 @param completeBlock 完成后的回调
 @param errorBlock    网络错误的回调
 */
- (void)loadAttentionDoctorListWithUserID:(NSNumber *)usersId pageSize:(NSInteger)pageSize page:(NSInteger)page completeBlock:(void(^)(NSArray<YJDoctorsIfonModel *> *modelList,NSError *error))completeBlock errorBlock:(void(^)(NSString *error))errorBlock;
@end
